/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package bankowosc;

import bankowosc.dane.Polecenie_przelewu;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;
import java.util.List;
import javax.swing.JButton;
import javax.swing.JOptionPane;
import javax.swing.table.AbstractTableModel;

/**
 *
 * @author Cyga
 */
public class TablicaHistoria extends AbstractTableModel {
  Polecenie_przelewu k = new  Polecenie_przelewu();
  String nrRachunku;
  String waluta;

    public String getWaluta() {
        return waluta;
    }

    public void setWaluta(String waluta) {
        this.waluta = waluta;
    }
    public Polecenie_przelewu getK() {
        return k;
    }
 public void setNrRachunku(String r){
 this.nrRachunku=r;
 }
 public String getNrRachunku(){
 return nrRachunku;
         
 }
    public void setK(Polecenie_przelewu k) {
        this.k = k;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public ArrayList<Polecenie_przelewu> getPrzelewy() {
        return przelewy;
    }

    public void setPrzelewy(ArrayList<Polecenie_przelewu> przelewy) {
        this.przelewy = przelewy;
    }

 String id ;
    private ArrayList<Polecenie_przelewu> przelewy = null;
    private final static Object[] columnNames = {"ID", "wych/przych","z","do","kwota","data","status"};
     private static final Class<?>[] COLUMN_TYPES = new Class<?>[] {Integer.class, String.class, String.class,String.class,String.class, String.class,String.class };
    private final static int id_IDX = 0;
    private final static int status = 1;
    private final static int z = 2;
    private final static int dor = 3;
    private final static int kwota = 4;
    private final static int data = 5;
    private final static int st = 6;
   
 
    public TablicaHistoria() {}
     @Override public Class<?> getColumnClass(int columnIndex) {
			return COLUMN_TYPES[columnIndex];
		}
    @Override
    public int getRowCount() {
        if(przelewy==null) return 0;
        return przelewy.size();
    }
 
    @Override
    public int getColumnCount() {
        return columnNames.length;
    }
     
    @Override
    public Object getValueAt(final int rowIndex,final int columnIndex) {
 
        if(przelewy == null) return null;
        
        final Polecenie_przelewu p = (Polecenie_przelewu) przelewy.get(rowIndex);
        switch (columnIndex) {
            case id_IDX:
                return p.getId_polecenia_przelewu();
            case status:
                if(p.getNr_rachunku_klienta().equals(this.nrRachunku))
                return "Wychodzący";
                else if(p.getNr_rachunku_wierzyciela().equals(this.nrRachunku))
                return "Przychodzący";
            case z:
       
						return p.getNr_rachunku_klienta();
               
            case dor:
                return p.getNr_rachunku_wierzyciela();
            case kwota:
                String kwo = new String(p.getWartosc()+waluta);
                return (kwo);
            case data:
                return p.getData_wykonania();
            case st:
                if(p.getId_statusu()==1)
                return "W trakcie";
                else if(p.getId_statusu()==2)
                return "Zrealizowano";
            default:
                return p;
        }
    }
 public void wyczysc(){
 przelewy.clear();
 }
    @Override
    public String getColumnName(int column) {
        return columnNames[column].toString();
    }
 
    @Override
    public boolean isCellEditable(int row, int column) {
        return false;
    }
     
    public void setModelData(ArrayList<Polecenie_przelewu> przelewy) {
       this.przelewy =  przelewy;
          System.out.println("nazwa:"+przelewy.get(0).getTytul());
    }
    public Polecenie_przelewu getKlub(int position) {
        return przelewy.get(position);
    }
   
    

}
